﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MegavaniaX.Actors.Weapons;

namespace MegavaniaX.Messaging.Events
{
    public enum WeaponType
    {
        Primary,
        Secondary
    }

    public struct WeaponEvent : IMegavaniaEvent
    {
        private MegavaniaEventType _eventType;
        private string[] _listenerNames;

        public MegavaniaEventType EventType { get { return _eventType; } private set { _eventType = value; } }
        public string[] ListenerNames { get { return _listenerNames; } private set { _listenerNames = value; } }

        public WeaponModifiers Modifiers;
        public WeaponType WeaponType;

        public WeaponEvent(MegavaniaEventType type, WeaponType weaponType, WeaponModifiers modifiers, params string[] listenerNames)
        {
            _eventType = type;
            _listenerNames = listenerNames;
            Modifiers = modifiers;
            WeaponType = weaponType;
        }
    }
}
